for i in range(int(input())):
x, y = map(int, input().split())
if (x+y) % 2==1:
print('-1 -1')
elif x%2==1:
if x > y:
print(int((x+y)/2)-y,y)
else:
print(x,int((x+y)/2)-x)
else:
print(int(x/2),int(y/2))
#include<bits/stdc++.h>
using namespace std;
#define ff first
#define ss second
#define ll long long
int main(){
int t;
cin>>t;
while(t--){
int a,b;
cin>>a>>b;
if((a+b)&1){
cout<<"-1 -1"<<endl;
}
else{
if(a&1){
if(a>b){
cout<<(a-b)/2<<" "<<b<<endl;
}
else{
cout<<a<<" "<<(b-a)/2<<endl;
}
}
else{
cout<<a/2<<" "<<b/2<<endl;
}
}
}
}
543. Diameter of Binary Tree | 124. Binary Tree Maximum Path Sum |
1465. Maximum Area of a Piece of Cake After Horizontal and Vertical Cuts | 501A - Contest |
160A- Twins | 752. Open the Lock |
1535A - Fair Playoff | 1538F - Interesting Function |
1920. Build Array from Permutation | 494. Target Sum |
797. All Paths From Source to Target | 1547B - Alphabetical Strings |
1550A - Find The Array | 118B - Present from Lena |
27A - Next Test | 785. Is Graph Bipartite |
90. Subsets II | 1560A - Dislike of Threes |
36. Valid Sudoku | 557. Reverse Words in a String III |
566. Reshape the Matrix | 167. Two Sum II - Input array is sorted |
387. First Unique Character in a String | 383. Ransom Note |
242. Valid Anagram | 141. Linked List Cycle |
21. Merge Two Sorted Lists | 203. Remove Linked List Elements |
733. Flood Fill | 206. Reverse Linked List |